package com.doll.util;

import java.util.ArrayList;
import java.util.List;

public class StringHelper {
	public static boolean isEmpty(Object str){
		if(str==null){
			return true;
		}
		if("".equals(""+str)){
			return true;
		}
		if("null".equals(""+str)){
			return true;
		}
		return false;
	}
	public static String null2String(String... str){
		for(String s:str){
			if(!isEmpty(s)){
				return s;
			}
		}
		return "";
	}
	/**
	 * 首字母小写
	 * @param str
	 * @return
	 */
	public static String lowerStartLetter(String str){
		return str.substring(0, 1).toLowerCase()+str.substring(1);
	}
	/**
	 * 首字母大写
	 * @param str
	 * @return
	 */
	public static String upperStartLetter(String str){
		return str.substring(0, 1).toUpperCase()+str.substring(1);
	}
	/**
	 * 
	 * @return
	 */
	public static String toTableName(String str){
		StringBuffer sb=new StringBuffer();
		for(int i=0;i<str.length();i++){
			if(str.charAt(i)==Character.toUpperCase(str.charAt(i))){
				sb.append("_").append(Character.toLowerCase(str.charAt(i)));
			}else{
				sb.append(str.charAt(i));
			}
		}
		return sb.toString();
	}
	public static String getNotEmptyStr(String... str){
		for(String s:str){
			if(!isEmpty(s)){
				return s;
			}
		}
		return "";
	}
	/**
	 * 此方法给freemarker 使用
	 * @param array
	 * @param i
	 * @return
	 */
	public static String getFromArray(String[] array,int i){
		return array[i];
	}
	
	public static List<String> asList(String[] array){
		List<String> ret=new ArrayList<String>();
		for(String s:array){
			if(StringHelper.isEmpty(s)){
				continue;
			}
			ret.add(s);
		}
		return ret;
	}
}
